Les Registres internes des PIC
Le registre d' adressage indirect des données
Le registre f0 est le registre d' adressage indirect qui donne un accès aux données. Ce registre est en relation avec le registre FSR
( f4.)
Le registre RTCC ( Real Time Clock Counter )
Le registre f1 est un emplacement mémoire dont le contenu évolue au rythme d' un signal d' horloge.
Le registre PC ( PCL sur PIC 16 C 8x )
Le registre f2 est le compteur de programme ( PC ) ou compteur ordinal. Il contient l' adresse en mémoire de programme de la prochaine instruction à exécuter.
Le registre d' état
Le registre f3 est le registre d' état qui contient notamment les flags qui informent sur le résultat de la dernière opération. Ce registre contient 8 bits
Contenu : PA2 - PA1 - PA0 - TO - PD - Z - DC - C ( serie PIC 16 C 5 x )
Contenu : IRP - RP1 - RP0 - TO - PD - Z - DC - C ( serie PIC 16 C 8 x )
Le registre FSR ( sélection de fichier )
Le registre f4 définit selon la position de ses bits 0 à 4 l'adresse du registre lors d' un accès indirect par le registre f0.Il est utilisé en programmation pour les adressage indirect.
Le registre TRIS
Les registres TRIS ont pour fonction de configurer les broches d' entrées - sorties des ports.
L ' état du bit n du registre TRIS B définit la broche n du port B . Si le bit vaut 0 alors la broche est une sortie, si il vaut 1 alors la broche est une entrée.
Ce sont les registre F5 , F6 , F7
Le registre INTCON ( famille 16c8x , 16C71 )
Ce registre est utilisé pour le contrôle des interruptions et leur localisation grâce aux bits de ce registre.
Le registre PCLATH ( famille 16c8x , 16C71 )
Le registre PC travaille sur 13 bits , 8 bits sont dans le registre PC et 5 dans le registre PCLATH.
Le registre EEDATA ( famille 16c84 , 16f84 )
Le registre contient la donnée à lire ou à écrire à une adresse de la mémoire l' E²PROM interne.
Le registre EEADR ( famille 16c84 , 16f84 )
Le registre contient l'adresse de la donnée à lire ou à écrire dans la mémoire l' E²PROM interne.
Le registre EECON 1 et 2 ( famille 16c84 , 16f84 )
Ces deux registres de contrôle permettent de lire et d' écrire dans la mémoire E²PROM interne.Selon le positionnement de certain bits une écriture ou une lecture est autorisé. La lecture reste cependant beaucoup plus simple d' emploi.
Contenu du registre EECONT1: EEIF - WRERR - WREN - WR - RD
- Le bit RD ( read data ) doit être mis à 1 pour lire une donnée
- Le bit WR ( WRite data ) doit être mis à 1 pour écrire une donnée
- Le bit WREN ( Write ENabled ) doit être mis à 1 autoriser une écriture
- Le bit WRERR ( Write ERRor ) est mis à 1 si une erreur s' est produit en écriture
- Le bit EEIF ( Eeprom Interrupt Flag ) est mis à 1 dès qu 'une écriture est terminée.
Le registre W
Le registre W dit registre de travail est similaire aux "accumulateurs" des microprocesseurs.
Les registres banalisés
Ce sont des registres qui n'ont pas de rôle définit, on peut les utiliser pour traiter une information. Pour les PIC 16C54 16C55 et 16C56 les adresses de ces registres vont de 08 h à 0F h soit 7 registres . Ce sont donc des registres temporaires à usage général .
( adresses : OC à 2F sue la famille des PIC 16 C 8x )
Le registre OPTION
Le registre OPTION permet de définir entre autre le choix d' un diviseur et son affectation au Watch Dog intégré ou bien à la RTCC qui est une horloge temps réel . On accède au registre OPTION uniquement en écriture et après un RESET tous les bits sont positionnés à 1.
Mapping de la mémoire
1 Famille 16c5x
2 PIC 16c84
3 PIC 16F84
4 PIC 16F628
5 PIC 16F88